package ModelLayer;

import java.util.*;

public class VareContainer
{
    private static  VareContainer instance;
    private ArrayList<Vare> varer;

    private VareContainer()
    {
        varer = new ArrayList<Vare>();
    }

    public static VareContainer getInstance()
    {
        if(instance == null)
        {
            instance = new VareContainer();
        }
        return instance;
    }

    public void addVare(String navn, String beskrivelse, double pris, double rabat)
    {
        varer.add(new Vare(navn, beskrivelse, pris, rabat));
    }

    public boolean setVare(String navn, String beskrivelse, double rabat, double pris)
    {
        boolean successful = false;
        Vare vare = findVare(navn,0);
        if(navn.isEmpty() != true)
        {
            vare.setNavn(navn);
        }
        if(beskrivelse.isEmpty() != true)
        {
            vare.setBeskrivelse(beskrivelse);
        }
        if(pris != 0)
        {
            vare.setPris(pris);
        }
        if(rabat != 0)
        {
            vare.setRabat(rabat);
        }
        if(vare.getNavn().equals(navn) && vare.getRabat() == rabat && vare.getBeskrivelse().equals(beskrivelse) && vare.getPris() == pris)        
        {
            successful = true;
        }
        return successful;
    }

    public boolean removeVare(String navn)
    {
        boolean found = false;
        Vare vare = findVare(navn,0);
        if(vare != null)
        {
            varer.remove(vare);
            found = true;
        }
        return found;
    }

    public Vare findVare(String navn, int antal)
    {
        Vare vare = null;
        for(int i = 0; i < varer.size(); i++)
        {
            if(navn.equals(varer.get(i).getNavn()))
            {
                vare = varer.get(i);
            }
        }
        return vare;
    }
}
